New in iOS development?

For those who are new on iOS app development, here you will find a series of links and materials that will teach you how to get stated.

Xcode

First of all you will need to install Xcode which is the IDE used to develop app on every Apple platforms (iPhone, iPad, Mac, Apple watch etc.)

Here is a complete guide about Xcode.

iOS Basic Concepts

Basically you can write iOS native applications in two languages: Objective-C and Swift ( this link contains a nice guide about swift programing languages). In order to develop apps you will be interacting with Cocoa Touch that is the iOS application development environment.

Cocoa Touch includes Foundation and UIKit frameworks , which are essential to program iOS apps.

The Foundation framework implements the root class, NSObject, which defines basic object behavior. It implements classes that represent primitive types (for example, strings and numbers) and collections (for example, arrays and dictionaries). Foundation also provides facilities for internationalization, object persistence, file management, and XML processing. You can use its classes to access underlying system entities and services, such as ports, threads, locks, and processes.

UIKit framework is use to develop the app’s user interface. UIKit include classes for event handling, drawing, image-handling, text processing, typography, and interapplication data transfer. It also includes user-interface elements such as table views, sliders, buttons, text fields, and alert dialogs. Here there is a catalog about the UI elements avaliable on UIKit.

An other main concept is that Cocoa Touch follows the MVC (Model-View-Controller) pattern, a design patter that classifies the application’s objects in three role categories (model, view, or controller) and defines their communication.

Code Signing

In order to distribute your app, submit it to the AppStore, install it on devices or integrate some app services (e.g. Push Notifications) you will need to code sign your app. To get depthly on this you can go to Apple's code signing suppot page or App Distribution Guide.

Tutorials

To start developing iOS apps we highly recommend you to follow this tutorials: